Progress in cancellable, multi-threaded, control software
Identifieur interne : 000A80 ( Main/Exploration ); précédent : 000A79; suivant : 000A81Progress in cancellable, multi-threaded, control software
Auteurs : K. Shortridge [Australie] ; T. J. Farrell [Australie]Source :
- Proceedings of SPIE, the International Society for Optical Engineering [ 0277-786X ] ; 2010.
Descripteurs français
- Pascal (Inist)
English descriptors
- KwdEn :
Abstract
The AAO's DRAMA data acquisition environment provides a very successful flexible model for instrument control tasks based on the concept of named 'actions'. A task can execute a number of these actions simultaneously, and - something we have found to be of paramount importance in control systems - they can be cancelled cleanly if necessary. However, this flexibility has been achieved by use of what is essentially a collaborative multi-threading system, each action running in short 'stages' in a single-threaded task. The original DRAMA design pre-dated the general availability of multi-threading systems, but until now we have been reluctant to move to a multi-threading model because of the difficulties associated with attempting to cleanly cancel a thread stuck in a blocking operation. We now believe we have an acceptable solution to this problem, and are modifying the internals of DRAMA to produce an approach - compatible with the existing system - that will allow individual actions to execute in separate threads. It will be able to carry out dialogues with hardware in a much simpler manner than has been allowed so far, and this should simplify the coding of DRAMA tasks enormously.
Affiliations:
Links toward previous steps (curation, corpus...)
- to stream PascalFrancis, to step Corpus: 000067
- to stream PascalFrancis, to step Curation: 000178
- to stream PascalFrancis, to step Checkpoint: 000086
- to stream Main, to step Merge: 000A85
- to stream Main, to step Curation: 000A80
Le document en format XML
<record><TEI><teiHeader><fileDesc><titleStmt><title xml:lang="en" level="a">Progress in cancellable, multi-threaded, control software</title>
<author><name sortKey="Shortridge, K" sort="Shortridge, K" uniqKey="Shortridge K" first="K." last="Shortridge">K. Shortridge</name>
<affiliation wicri:level="1"><inist:fA14 i1="01"><s1>Anglo-Australian Observatory, PO Box 296</s1>
<s2>Epping, NSW 1710</s2>
<s3>AUS</s3>
<sZ>1 aut.</sZ>
<sZ>2 aut.</sZ>
</inist:fA14>
<country>Australie</country>
<wicri:noRegion>Epping, NSW 1710</wicri:noRegion>
</affiliation>
</author>
<author><name sortKey="Farrell, T J" sort="Farrell, T J" uniqKey="Farrell T" first="T. J." last="Farrell">T. J. Farrell</name>
<affiliation wicri:level="1"><inist:fA14 i1="01"><s1>Anglo-Australian Observatory, PO Box 296</s1>
<s2>Epping, NSW 1710</s2>
<s3>AUS</s3>
<sZ>1 aut.</sZ>
<sZ>2 aut.</sZ>
</inist:fA14>
<country>Australie</country>
<wicri:noRegion>Epping, NSW 1710</wicri:noRegion>
</affiliation>
</author>
</titleStmt>
<publicationStmt><idno type="wicri:source">INIST</idno>
<idno type="inist">11-0055948</idno>
<date when="2010">2010</date>
<idno type="stanalyst">PASCAL 11-0055948 INIST</idno>
<idno type="RBID">Pascal:11-0055948</idno>
<idno type="wicri:Area/PascalFrancis/Corpus">000067</idno>
<idno type="wicri:Area/PascalFrancis/Curation">000178</idno>
<idno type="wicri:Area/PascalFrancis/Checkpoint">000086</idno>
<idno type="wicri:doubleKey">0277-786X:2010:Shortridge K:progress:in:cancellable</idno>
<idno type="wicri:Area/Main/Merge">000A85</idno>
<idno type="wicri:Area/Main/Curation">000A80</idno>
<idno type="wicri:Area/Main/Exploration">000A80</idno>
</publicationStmt>
<sourceDesc><biblStruct><analytic><title xml:lang="en" level="a">Progress in cancellable, multi-threaded, control software</title>
<author><name sortKey="Shortridge, K" sort="Shortridge, K" uniqKey="Shortridge K" first="K." last="Shortridge">K. Shortridge</name>
<affiliation wicri:level="1"><inist:fA14 i1="01"><s1>Anglo-Australian Observatory, PO Box 296</s1>
<s2>Epping, NSW 1710</s2>
<s3>AUS</s3>
<sZ>1 aut.</sZ>
<sZ>2 aut.</sZ>
</inist:fA14>
<country>Australie</country>
<wicri:noRegion>Epping, NSW 1710</wicri:noRegion>
</affiliation>
</author>
<author><name sortKey="Farrell, T J" sort="Farrell, T J" uniqKey="Farrell T" first="T. J." last="Farrell">T. J. Farrell</name>
<affiliation wicri:level="1"><inist:fA14 i1="01"><s1>Anglo-Australian Observatory, PO Box 296</s1>
<s2>Epping, NSW 1710</s2>
<s3>AUS</s3>
<sZ>1 aut.</sZ>
<sZ>2 aut.</sZ>
</inist:fA14>
<country>Australie</country>
<wicri:noRegion>Epping, NSW 1710</wicri:noRegion>
</affiliation>
</author>
</analytic>
<series><title level="j" type="main">Proceedings of SPIE, the International Society for Optical Engineering</title>
<title level="j" type="abbreviated">Proc. SPIE Int. Soc. Opt. Eng.</title>
<idno type="ISSN">0277-786X</idno>
<imprint><date when="2010">2010</date>
</imprint>
</series>
</biblStruct>
</sourceDesc>
<seriesStmt><title level="j" type="main">Proceedings of SPIE, the International Society for Optical Engineering</title>
<title level="j" type="abbreviated">Proc. SPIE Int. Soc. Opt. Eng.</title>
<idno type="ISSN">0277-786X</idno>
</seriesStmt>
</fileDesc>
<profileDesc><textClass><keywords scheme="KwdEn" xml:lang="en"><term>Availability</term>
<term>Blocking</term>
<term>Bolted joint</term>
<term>Breaking in</term>
<term>Data acquisition</term>
<term>Flexibility</term>
<term>Modeling</term>
<term>Multithread</term>
<term>Screwed joint</term>
<term>System identification</term>
<term>Thread (software)</term>
</keywords>
<keywords scheme="Pascal" xml:lang="fr"><term>Identification système</term>
<term>Disponibilité</term>
<term>Multitâche</term>
<term>Processus léger (logiciel)</term>
<term>Saisie donnée</term>
<term>Flexibilité</term>
<term>Rodage</term>
<term>Assemblage boulonné</term>
<term>Assemblage vissé</term>
<term>Modélisation</term>
<term>Blocage</term>
<term>.</term>
</keywords>
</textClass>
</profileDesc>
</teiHeader>
<front><div type="abstract" xml:lang="en">The AAO's DRAMA data acquisition environment provides a very successful flexible model for instrument control tasks based on the concept of named 'actions'. A task can execute a number of these actions simultaneously, and - something we have found to be of paramount importance in control systems - they can be cancelled cleanly if necessary. However, this flexibility has been achieved by use of what is essentially a collaborative multi-threading system, each action running in short 'stages' in a single-threaded task. The original DRAMA design pre-dated the general availability of multi-threading systems, but until now we have been reluctant to move to a multi-threading model because of the difficulties associated with attempting to cleanly cancel a thread stuck in a blocking operation. We now believe we have an acceptable solution to this problem, and are modifying the internals of DRAMA to produce an approach - compatible with the existing system - that will allow individual actions to execute in separate threads. It will be able to carry out dialogues with hardware in a much simpler manner than has been allowed so far, and this should simplify the coding of DRAMA tasks enormously.</div>
</front>
</TEI>
<affiliations><list><country><li>Australie</li>
</country>
</list>
<tree><country name="Australie"><noRegion><name sortKey="Shortridge, K" sort="Shortridge, K" uniqKey="Shortridge K" first="K." last="Shortridge">K. Shortridge</name>
</noRegion>
<name sortKey="Farrell, T J" sort="Farrell, T J" uniqKey="Farrell T" first="T. J." last="Farrell">T. J. Farrell</name>
</country>
</tree>
</affiliations>
</record>
Pour manipuler ce document sous Unix (Dilib)
EXPLOR_STEP=$WICRI_ROOT/Ticri/CIDE/explor/CyberinfraV1/Data/Main/Exploration
HfdSelect -h $EXPLOR_STEP/biblio.hfd -nk 000A80 | SxmlIndent | more
Ou
HfdSelect -h $EXPLOR_AREA/Data/Main/Exploration/biblio.hfd -nk 000A80 | SxmlIndent | more
Pour mettre un lien sur cette page dans le réseau Wicri
{{Explor lien |wiki= Ticri/CIDE |area= CyberinfraV1 |flux= Main |étape= Exploration |type= RBID |clé= Pascal:11-0055948 |texte= Progress in cancellable, multi-threaded, control software }}
This area was generated with Dilib version V0.6.25. |